/**
 * 系统管理相关API接口
 */

import { downloadFile, http } from "@/utils/core/http"

/**
 * 获取系统配置
 * @returns {Promise} 返回系统配置
 */
export function getSystemConfig() {
  return http.get("/system/config");
}

/**
 * 更新系统配置
 * @param {Object} data - 配置数据
 * @returns {Promise} 返回更新结果
 */
export function updateSystemConfig(data) {
  return http.put("/system/config", data);
}

/**
 * 获取系统日志
 * @param {Object} params - 查询参数
 * @returns {Promise} 返回日志数据
 */
export function getSystemLogs(params = {}) {
  return http.get("/system/logs", { params });
}

/**
 * 导出数据
 * @param {string} type - 导出类型 (users/problems/submissions)
 * @param {Object} params - 导出参数
 * @returns {Promise} 返回导出结果
 */
export function exportData(type, params = {}) {
  const filename = `${type}_export_${new Date().toISOString().split("T")[0]}.xlsx`;
  return downloadFile(`/system/export/${type}`, filename);
}

/**
 * 清理系统缓存
 * @returns {Promise} 返回清理结果
 */
export function clearCache() {
  return http.post("/system/cache/clear");
}

/**
 * 获取系统健康状态
 * @returns {Promise} 返回健康状态
 */
export function getSystemHealth() {
  return http.get("/system/health");
}
